package com.demoku.web.application.demoAdmin;

import java.util.List;

import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

import org.iff.infra.util.mybatis.plugin.Page;

import com.demoku.web.application.demoAdmin.vo.ClassTypeVO;

/**
 * @author autoCode
 */
@Produces( { MediaType.APPLICATION_JSON })
public interface ClassTypeApplication {

	@GET
	@Path("/getClassTypeVO/{id}")
	@Consumes( { MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON,
			MediaType.TEXT_PLAIN })
	ClassTypeVO getClassTypeVO(@PathParam("id") String id);

	@GET
	@Path("/pageFindAllClassType")
	@Consumes( { MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON,
			MediaType.TEXT_PLAIN })
	Page pageFindAllClassType(ClassTypeVO vo, Page pages);

	@POST
	@Path("/saveClassType")
	ClassTypeVO saveClassType(ClassTypeVO vo);

	@DELETE
	@Path("/removeClassType/{id}")
	@Consumes( { MediaType.MULTIPART_FORM_DATA })
	void removeClassType(@PathParam("id") String id);


	@POST
	@Path("/findAll")
	@Consumes( { MediaType.MULTIPART_FORM_DATA })
	List<ClassTypeVO> findAll(Page pages);
	
	@POST
	@Path("/pageFindAll")
	@Consumes( { MediaType.MULTIPART_FORM_DATA })
	Page pageFindAll(Page pages);
}
